﻿using System;
using System.Collections;
using Huirui.Cavan.Presentation.Seedwork;
using Huirui.Cavan.Domain.MainBoundedContext.PurchaseModule;
using Huirui.Cavan.Domain.MainBoundedContext.SearchModule;
using Huirui.Cavan.Domain.MainBoundedContext.ReportModule;
using System.Collections.Generic;
using System.Web.Mvc;

namespace Huirui.Cavan.Presentation.ViewModel.PurchaseModule
{
    #region PurchaseOrder

    public class PurchaseOrderViewModel : EntityModel<PurchaseOrder, string, PurchaseOrderSearch>, IPurchaseOrderViewModel
    {
        public decimal TaxRate { get; set; }
        public string PurchaseOrderDetails { get; set; }
        public IList<SelectListItem> Currencies { get; set; }

        public PurchaseOrderViewModel()
        {
            this.Currencies = new List<SelectListItem>();
        }
    }

    public class PurchaseOrderJson : BaseJson<string>
    {
        public DateTime PurchaseDate { get; set; }
        public DateTime DeliveryDate { get; set; }
        public string Currency { get; set; }
        public decimal CurrencyRate { get; set; }
        public string SupplierInvoiceNumber { get; set; }
        public string DeliveryAddress { get; set; }
        public string Remark { get; set; }
        public string Contact { get; set; }
        public string ContactTelephone { get; set; }
        public string PurchaseEmployeeCode { get; set; }
        public string ProjectCode { get; set; }
        public string SupplierCode { get; set; }
        public string WareHouseCode { get; set; }
        public decimal TaxRate { get; set; }
        public string SupplierName { get; set; }
        public string WareHouseAddress { get; set; }
    }

    public class PurchaseOrderJsonViewModel : JsonViewModel<PurchaseOrderJson>
    {

    }

    public class PurchaseOrderManageJsonViewModel : JsonViewModel<PurchaseOrderManageReport>
    {

    }
    #endregion
}